USE [RLZY]
GO

/****** Object:  StoredProcedure [dbo].[pro_SJTJ_ALL]    Script Date: 07/30/2014 22:51:07 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE proc [dbo].[pro_SJTJ_ALL](@date varchar(20),@name varchar(20))
as
if  exists (select name from sysobjects where name='GZ1')  drop table GZ1
select 用工性质 ,sum(人数) as 人数, sum(扣失业保险) as 个人失业金1,sum(扣养老金) as 个人养老金8, Sum(扣医疗保险) as 个人医疗金2, sum(扣公积金) as 个人公积金10   into GZ1 from GZ where substring(日期,1,7)=@date and (部门单位 like '%'+@name+'%' or @name='')   group by 用工性质
alter table GZ1 add ID int identity(1,1), 企业失业金2  decimal(18,2),合计失业金  decimal(18,2),企业养老金20  decimal(18,2),合计养老金  decimal(18,2), 企业医疗金7  decimal(18,2), 合计医疗金  decimal(18,2),企业公积金10  int,合计公积金  int,工伤保险  decimal(18,2),总计  decimal(18,2) 
update GZ1 set  企业失业金2=个人失业金1*2, 企业养老金20=个人养老金8*2.5, 企业医疗金7=个人医疗金2*3.5 , 企业公积金10=个人公积金10 ,工伤保险=人数*0.016*2621   
update GZ1 set  合计失业金=个人失业金1+企业失业金2,合计养老金=个人养老金8+企业养老金20,合计医疗金=个人医疗金2+企业医疗金7,合计公积金=个人公积金10+企业公积金10  
update GZ1 set  总计=合计失业金+合计养老金+合计医疗金+合计公积金+工伤保险  
declare   @VarX1 int,@VarX2 int, @VarX3 int,@VarX4 int,@VarX5 int,@VarX6 int,@VarX7 int,@VarX8 int,@VarX9 int,@VarX10 int  
declare   @VarX11 int,@VarX12 decimal(18,2), @VarX13 decimal(18,2),@VarX14 decimal(18,2),@VarX15 decimal(18,2),@VarX16 decimal(18,2),@VarX17 decimal(18,2),@VarX18 decimal(18,2),@VarX19 decimal(18,2),@VarX20 decimal(18,2),@VarX21 int,@VarX22 int,@VarX23 int,@VarX24 decimal(18,2),@VarX25 decimal(18,2)   
select   @VarX11=sum(人数) , @VarX12=sum(个人失业金1) ,@VarX13=Sum(企业失业金2) ,@VarX14=sum(合计失业金) ,@VarX15=sum(个人养老金8) ,@VarX16=sum(企业养老金20) ,@VarX17 =Sum(合计养老金) ,@VarX18=SUM(个人医疗金2) ,@VarX19=SUM(企业医疗金7),@VarX20=sum(合计医疗金),@VarX21=suM(个人公积金10),@VarX22=sum(企业公积金10), @VarX23=sum(合计公积金),@VarX24=sum(工伤保险) , @VarX25=Sum(总计) from GZ1  
insert into GZ1(用工性质,人数 , 个人失业金1, 企业失业金2 ,合计失业金 ,个人养老金8,企业养老金20,合计养老金,个人医疗金2,企业医疗金7,合计医疗金,个人公积金10,企业公积金10, 合计公积金,工伤保险 , 总计) values ( '合计',@VarX11,@VarX12,@VarX13,@VarX14,@VarX15,@VarX16,@VarX17,@VarX18,@VarX19,@VarX20,@VarX21,@VarX22,@VarX23,@VarX24,@VarX25)   


GO

